import Editor, { type EditorProps } from '@monaco-editor/react';
import { cn } from '@/utils/cn';

interface AIEditorProps extends Omit<EditorProps, 'height' | 'width'> {
    // 扩展的自定义属性
    height?: string | number;
    width?: string | number;
    className?: string;
    style?: React.CSSProperties;
}

function AIEditor({
    height,
    width = '100%',
    className,
    style,
    ...editorProps // 所有其他 Monaco Editor 的属性
}: AIEditorProps) {
    return (
        <div className={cn('flex flex-col', className)} style={style}>
            <Editor
                height={height}
                width={width}
                {...editorProps} // 直接传递所有 Monaco Editor 的属性
            />
        </div>
    );
};

export default AIEditor;
